An ad-less, multilingual, clean Soundcloud downloader with robust code. Adds a 'Download' button to all single track views.
- No third-party embeds, redirects or ads, directly uses the Soundcloud API.
# chain DataFrame.withColumnRenamed() calls for each df.schema.fields | |
df = reduce(lambda chain, column: chain.withColumnRenamed(*column), | |
map(lambda field: (field.name, str.lower(field.name)), | |
df.schema.fields), | |
df) |
UPDATE: I have baked the ideas in this file inside a Python CLI tool called pyds-cli
. Please find it here: https://github.com/ericmjl/pyds-cli
Having done a number of data projects over the years, and having seen a number of them up on GitHub, I've come to see that there's a wide range in terms of how "readable" a project is. I'd like to share some practices that I have come to adopt in my projects, which I hope will bring some organization to your projects.
Disclaimer: I'm hoping nobody takes this to be "the definitive guide" to organizing a data project; rather, I hope you, the reader, find useful tips that you can adapt to your own projects.
Disclaimer 2: What I’m writing below is primarily geared towards Python language users. Some ideas may be transferable to other languages; others may not be so. Please feel free to remix whatever you see here!
Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.
# https://nixos.wiki/wiki/Nixpkgs/Create_and_debug_packages#Using_nix-shell_for_package_development | |
function debug_nix_package () { | |
set -u | |
packageName=${1:-default} | |
flakeDir=${2:-$(pwd)} | |
tmpdir=${3:-$(mktemp --directory --suffix=-nix-dbg)} | |
system=${4:-$(uname --machine)-$(uname --kernel-name | tr '[:upper:]' '[:lower:]')} | |
cd "$tmpdir" || exit | |
ln -s "$flakeDir" flakeDir |
Documentación oficial sobre Jest
npm install -D jest @types/jest ts-jest supertest
# This script will manually rip out all VMware Tools registry entries and files for Windows 2008-2019 | |
# Tested for 2019, 2016, and probably works on 2012 R2 after the 2016 fixes. | |
# This function pulls out the common ID used for most of the VMware registry entries along with the ID | |
# associated with the MSI for VMware Tools. | |
function Get-VMwareToolsInstallerID { | |
foreach ($item in $(Get-ChildItem Registry::HKEY_CLASSES_ROOT\Installer\Products)) { | |
If ($item.GetValue('ProductName') -eq 'VMware Tools') { | |
return @{ | |
reg_id = $item.PSChildName; |
JOINING DATA IN POSTGRESQL | |
Target is to join two or more database together in a single table | |
Innerjoin in SQL | |
Select p1.country, p1.continent, | |
Prime_minister, president | |
FROM prime_ministers AS p1 | |
INNER JOIN presidents AS p2 | |
ON p1.country = p2.country; | |
===================================================================== | |
Inner join |